package com.wk.code.wkserver.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.math.BigDecimal;

@Data
@Accessors(chain = true)
@TableName("pms_goods")
public class Goods {


    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;


    private Long orgId;
    /**
     * 商品分类id(1,2,3)，完整分类信息
     */
    @ApiModelProperty(value = "商品分类id(1,2,3)，完整分类信息")
    private String categoryId;
    /**
     * 完整分类信息
     */
    @ApiModelProperty(value = "完整分类信息")
    private String categoryFullInfo;
    /**
     * skuId
     */
    @ApiModelProperty(value = "skuId")
    private String skuId;

    /**
     * 商品名称
     */
    @ApiModelProperty(value = "商品名称")
    private String name;
    /**
     * 商品别名(仅用于查询)
     */
    @ApiModelProperty(value = "商品别名(仅用于查询)")
    private String alias;
    /**
     * 品牌
     */
    @ApiModelProperty(value = "品牌")
    private String brand;
    /**
     * 规格
     */
    @ApiModelProperty(value = "规格")
    private String spec;
    /**
     * 生产厂家
     */
    @ApiModelProperty(value = "生产厂家")
    private String manufacturer;
    /**
     * 保质期(天)
     */
    @ApiModelProperty(value = "保质期(天)")
    private Integer shelfLifeDays;
    /**
     * 可上架天数
     */
    @ApiModelProperty(value = "可上架天数")
    private Integer putOnShelvesDays;
    /**
     * 预警天数
     */
    @ApiModelProperty(value = "预警天数")
    private Integer warningDays;
    /**
     * 禁收天数
     */
    @ApiModelProperty(value = "禁收天数")
    private Integer rejectDays;
    /**
     * 库存单位(千克、件、箱等)
     */
    @ApiModelProperty(value = "库存单位(千克、件、箱等)")
    private String stockUnit;
    /**
     * 计价单位(千克、件、箱等)
     */
    @ApiModelProperty(value = "计价单位(千克、件、箱等)")
    private String priceUnit;
    /**
     * 计价单位换算方式（等于/约等）
     */
    @ApiModelProperty(value = "计价单位换算方式（等于/约等）")
    private String unitTransWay;
    /**
     * 计价单位转为比例
     */
    @ApiModelProperty(value = "计价单位转为比例")
    private BigDecimal unitTrans;
    /**
     * 是否存在押金品
     */
    @ApiModelProperty(value = "是否存在押金品")
    private Boolean hasDeposit;
    /**
     * 是否标准品
     */
    @ApiModelProperty(value = "是否标准品")
    @TableField("is_normal")
    private Boolean normal;
    /**
     * 是否组合商品
     */
    @ApiModelProperty(value = "是否组合商品")
    @TableField("is_combination")
    private Boolean combination;
    /**
     * 主图地址(不超过四张，多张用逗号分隔)
     */
    @ApiModelProperty(value = "主图地址(不超过四张，多张用逗号分隔)")
    private String masterImgUrl;

    /**
     * 来源id
     */
    @ApiModelProperty(value = "来源id")
    private String sourceId;

    /**
     * 商品质量标准图片
     */
    @ApiModelProperty(value = "商品质量标准图片")
    private String qualityStandard;

    @ApiModelProperty(value = "商品名称")
    private String englishName;

    @ApiModelProperty(value = "配销分类ID")
    private Long distributionId;

    @ApiModelProperty(value = "外部商品ID")
    private String externalSkuId;
}
